▸ Selamat Datang
Davi Gunawan
7 Mata KUliah Konsep Dasar Keamanan Data dan Informasi
Caesar Cipher
Geser tiap huruf sebanyak N posisi dalam alfabet.
Substitusi
Vigenère Cipher
Geser tiap huruf dengan kunci berulang — poli-alfabetik, lebih kuat dari Caesar.
Substitusi Poli-alfabetik
Karakter (ASCII)
Geser nilai ASCII tiap karakter, termasuk angka dan simbol.
Substitusi
Hill Cipher
Enkripsi berbasis aljabar linear — perkalian matriks modulo 26.
Substitusi Poligram
RSA Cipher
Kriptografi asimetris dengan kunci publik dan privat berbeda.
Asimetris
Blok (Kolom)
Tulis pesan ke grid lalu baca per kolom. Transposisi paling umum digunakan.
Transposisi
Zigzag (Rail Fence)
Tulis huruf zig-zag melewati beberapa "rel", lalu baca per rel dari kiri ke kanan.
Transposisi
▸ Substitusi Monoalfabetik
Caesar Cipher
Setiap huruf digeser sebanyak N posisi dalam alfabet.
Input
Hasil Enkripsi
KDOR GXQLD
Visualisasi Per Huruf
Langkah Perhitungan
Enkripsi : E(x) = (x + shift) mod 26
Dekripsi : D(x) = (x − shift + 26) mod 26
Ket : A=0, B=1, … Z=25
Dekripsi : D(x) = (x − shift + 26) mod 26
Ket : A=0, B=1, … Z=25
▸ Substitusi Poli-alfabetik
Vigenère Cipher
Setiap huruf pesan digeser memakai huruf kunci yang berbeda-beda, diulang sepanjang pesan — lebih sulit dipecahkan dibanding Caesar.
Input & Kunci
Hasil Enkripsi
—
Kunci Berulang (Vigenère Table)
Visualisasi Per Huruf
Langkah Perhitungan
Enkripsi : C(i) = (P(i) + K(i)) mod 26
Dekripsi : P(i) = (C(i) − K(i) + 26) mod 26
Ket : A=0, B=1, … Z=25 | K(i) = huruf kunci ke-i (kunci diulang menyesuaikan panjang pesan, spasi/non-huruf pada pesan dilewati)
Dekripsi : P(i) = (C(i) − K(i) + 26) mod 26
Ket : A=0, B=1, … Z=25 | K(i) = huruf kunci ke-i (kunci diulang menyesuaikan panjang pesan, spasi/non-huruf pada pesan dilewati)
▸ Substitusi ASCII
Karakter Cipher (ASCII Shift)
Geser nilai ASCII tiap karakter — berlaku untuk semua karakter, bukan hanya huruf.
Input
Hasil Enkripsi
—
Visualisasi Per Karakter
Langkah Perhitungan
Enkripsi : ASCII_baru = ASCII_asli + shift
Dekripsi : ASCII_asli = ASCII_baru − shift
Ket : Berlaku untuk SEMUA karakter, bukan hanya huruf
Dekripsi : ASCII_asli = ASCII_baru − shift
Ket : Berlaku untuk SEMUA karakter, bukan hanya huruf
▸ Substitusi Poligram
Hill Cipher
Enkripsi berbasis aljabar linear. Setiap blok huruf dikalikan dengan matriks kunci secara modulo 26.
Input & Kunci
UKURAN MATRIKS
MATRIKS KUNCI K
[
]
● Menghitung...
Hasil Enkripsi
—
Matriks Kunci K
Invers K⁻¹ mod 26
Blok Vektor
Langkah Perhitungan
Enkripsi : C = (K × P) mod 26
Dekripsi : P = (K⁻¹ × C) mod 26
Ket : K = matriks kunci | P = vektor plaintext | A=0…Z=25
Dekripsi : P = (K⁻¹ × C) mod 26
Ket : K = matriks kunci | P = vektor plaintext | A=0…Z=25
▸ Kriptografi Asimetris
RSA Cipher
Rivest–Shamir–Adleman. Kunci publik untuk enkripsi, kunci privat untuk dekripsi.
Pembangkitan Kunci
1. Pilih prima p dan q | 2. n = p×q | 3. φ(n) = (p−1)(q−1)
4. Pilih e: gcd(e,φ)=1 | 5. Hitung d: d×e ≡ 1 (mod φ)
4. Pilih e: gcd(e,φ)=1 | 5. Hitung d: d×e ≡ 1 (mod φ)
● Menghitung...
n = p×q
—
φ(n)
—
Kunci Publik (e,n)
—
Kunci Privat (d,n)
—
Enkripsi & Dekripsi
Enkripsi : C = M^e mod n (kunci publik e)
Dekripsi : M = C^d mod n (kunci privat d)
Ket : M = nilai ASCII per karakter
Dekripsi : M = C^d mod n (kunci privat d)
Ket : M = nilai ASCII per karakter
● Siap
Hasil Enkripsi
—
Visualisasi Per Karakter
Langkah Perhitungan
▸ Transposisi Kolom
Blok Cipher (Columnar)
Pesan ditulis ke dalam grid baris×kolom, kemudian dibaca per kolom dari kiri ke kanan untuk menghasilkan ciphertext.
Input
Hasil Enkripsi
—
Grid Blok
Langkah Perhitungan
Enkripsi : Tulis baris→kolom, baca per kolom (atas→bawah)
Dekripsi : Isi kolom dari cipher, baca per baris
Dekripsi : Isi kolom dari cipher, baca per baris
▸ Transposisi Rel
Zigzag (Rail Fence)
Huruf ditulis secara zig-zag melewati sejumlah "rel", kemudian dibaca per rel dari kiri ke kanan untuk menghasilkan ciphertext.
Input
Hasil Enkripsi
—
Visualisasi Rel
Langkah Perhitungan
Enkripsi : Distribusi zigzag → baca tiap rel kiri ke kanan
Dekripsi : Hitung panjang rel → isi dari cipher → baca diagonal
Dekripsi : Hitung panjang rel → isi dari cipher → baca diagonal